package com.sisbibvir.unmsm.dao;

import java.util.List;
import javax.persistence.EntityManager;

import com.sisbibvir.unmsm.entidades.Profesor;

public class AsesorDAO extends DaoGenericImpl<Profesor, Integer> {

	public AsesorDAO(EntityManager entityManager) {
		super(entityManager);
	}

	public List<Profesor> listarTodos() {
		entityManager.getTransaction().begin();
		@SuppressWarnings("unchecked")
		List<Profesor> aux = entityManager.createQuery(
				"SELECT p FROM Profesor p").getResultList();
		entityManager.getTransaction().commit();
		return aux;
	}
	
	public List<Profesor[]> listarTesis(String entrada) {
		entityManager.getTransaction().begin();
		@SuppressWarnings("unchecked")
		/*
		List<Tesi> aux = entityManager.createQuery("select t.id, t.titulo, t.resumen, t.tipo, t.archivo , t.estado from tesis t " +
				"inner join detalle_tags_tesis dtt on t.id=dtt.tesis_id " +
				"inner join tags_tesis tt on dtt.Tags_Tesis_id=tt.id where tt.descripcion='"+entrada+"'").getResultList();
		*/
		
		List<Profesor[]> aux = (List<Profesor[]>) entityManager.createNativeQuery("select t.id, t.titulo, t.resumen, t.tipo, t.archivo , t.estado from tesis t " +
				"inner join detalle_tags_tesis dtt on t.id=dtt.tesis_id " +
				"inner join tags_tesis tt on dtt.Tags_Tesis_id=tt.id where tt.descripcion='"+entrada+"'").getResultList();
		
		entityManager.getTransaction().commit();	
		return aux;
	} 
	
}
